1. Field of the Invention
The present invention relates in general to methods and apparatus for electronic data transmission, and in particular to a system and method for efficiently and accurately transmitting information on a data bus in the presence of noise.
2. Background Information
A data bus commonly consists of lines for transferring data words between devices within a computer. A data word is made up of data bits transmitted as varying voltages on the data bus lines. Noise, interference, or other events such as ground voltage shifts between transmitter and receiver alter the signal such that what is sent may not be what is received. The possibility of signal alteration, whether or not it actually occurs, creates a need for ways to improve signal integrity. Both hardware and software solutions have been considered in the development of accurate data transmission methods.
One method of improving signal integrity is to run a separate ground line between the transmitter and receiver. The ground line voltage is used as a reference voltage. The difference between the data signal received at the receiver and the ground line voltage at the receiver is used to determine the signal polarity. One problem with this method is that it is not precisexe2x80x94the margin of error inherent in measuring voltage levels at the receiver may either mask or exaggerate voltage level variations due to noise. In addition, since there is no signal being driven down the ground line, the ground line voltage may be affected differently by the interfering source, again potentially masking or exaggerating transmission errors. Many applications have a need, however, for highly accurate message transfer.
Another message verification method is to run a differential line for each data line. According to this method there are two lines for every channel between the transmitter and the receiver. The first line carries the signal and the second line carries the complement of that signal (for example, where the first line value is xe2x80x981xe2x80x99, the second line value is xe2x80x980xe2x80x99). The message being transferred is represented by the difference between the two signals. Any ground voltage shifts occurring during transmission equally affect both lines, so there is no net effect on the message because the difference between the two lines remains constant. One of the primary benefits of this method is that it requires no local reference value. The weakness is that it doubles the number of required transmission lines. With the continual push to manufacture devices with more elements and smaller overall size, there is a need to achieve a higher level of signal accuracy with minimal hardware overhead requirements.
A method is provided for electronically transmitting information on a data bus efficiently and effectively. The method of the present invention can be used in combination with a variety of operational modes, including but not limited to full duplex communications. By reducing noise generation at the transmitter and rejecting common mode noise at the receiver, the system of the present invention increases the data bandwidth on data buses.
The embodiments of the present invention are improvements over conventional systems and methods in part because fewer transmission lines are required and as a result noise generated at the transmitter circuit is reduced. Conventional differential transmission systems use 2*n lines for n bits, where the system of the invention requires only n+1 lines. In addition, power consumed by the transmitter circuit is decreased because fewer signals have to be transmitted. The reduced number of required lines allows devices employing the system and methods of the invention to maintain high quality data transmission while reducing the costs associated with manufacturing and maintaining more transmission lines. Another advantage of the present invention is that common mode noise is removed at the receiver. In one embodiment the system of the invention also compensates for crosstalk between the signals.
According to one embodiment of the invention, a method of encoding n signals is provided, using a reference voltage signal, wherein the differences between adjacent signals are determined and transmitted as n+1 encoded signals. A method of decoding m encoded signals is also provided, wherein the encoded signals are processed through an array of resistors, giving the original n signals.
Another embodiment describes a spacial derivative encoder, comprising one or more differential amplifiers, including a first and a second differential amplifier, one or more input data lines connected to the one or more differential amplifiers, a fixed reference voltage line, connected to the first and the second differential amplifier, and one or more output transmission lines connected to the one or more differential amplifiers, the number of output transmission lines equal to n+1, where n is the number of input data lines. A spacial derivative decoder is also provided, comprising one or more input transmission lines, one or more differential amplifiers, the number of differential amplifiers equal to mxe2x88x921, where m is the number of encoded input transmission lines, a resistor network electrically located between the one or more input transmission lines and the one or more differential amplifiers, and one or more output data lines connected to the one ore more differential amplifiers, the number of output data lines equal to the number of differential amplifiers. In an additional embodiment the resistor network further comprises an array of resistors for averaging signals received on the one or more input transmission lines. Yet another embodiment provides a communications system, comprising a spacial derivative encoder and a spacial derivative decoder.
In another embodiment, signals are processed through a time-domain encoding scheme prior to differential encoding. This allows the system to account for the actual variation of a signal voltage, thereby compensating for signal dispersion and reducing base line wander due to frequency-dependent attenuation on lines. Time-domain encoding also reduces inter-symbol interference resulting from reflections or dispersion on the signal lines.